package com.kingwang.training.designpattern.state.bo;

/**
 * 电梯运行状态
 */
public interface LiftState {
    /**
     * 电梯门开启
     *
     * @return
     */
    LiftState open();

    /**
     * 电梯门关闭
     *
     * @return
     */
    LiftState close();

    /**
     * 电梯运行
     *
     * @return
     */
    LiftState run();

    /**
     * 电梯停靠
     *
     * @return
     */
    LiftState stop();

    /**
     * 与状态绑定的行为
     */
    void doSomething();
}
